This invention relates generally to the design of computer systems and, more particularly, to computer aided design (CAD) tools.
A printed circuit board (PCB) (also referred to as a printed wiring board (PWB), or a PC Laminate (PC Lam)) provides a mechanism for implementing a circuit design (i.e., the interconnection of electrical devices and components) for use, e.g., in the design of a computer system. A PCB may be xe2x80x9csingle layer,xe2x80x9d xe2x80x9cdouble layer,xe2x80x9d or xe2x80x9cmulti-layerxe2x80x9dxe2x80x94each of which refers to the number of electrically conductive layers. A multi-layer board bonded together. Typically, holes (or through-holes) are drilled through a PCB and are subsequently coated, or plated, with a conductive substance (forming xe2x80x9cviasxe2x80x9d) for the purpose of connecting signal paths on different conductive layers together.
In designing a PCB, both component placement (layout) and signal path routing must be determined. While for simple designs this may be performed manuallyxe2x80x94for complex PCB designs, e.g., where the number of components is large and the number of signals number in the hundredsxe2x80x94the layout and signal path routing becomes more, and more, tedious. To this end, and as known in the art, computer-aided design (CAD) tools can be used to assist in performing the layout and signal routing for a PCB. A CAD tool typically provides for a PCB design a board-related data file comprising at least component placement and signal path routing information.
We have observed that in the design of high-performance computer systems comprising a number of PCBs, there are system-level design parameters that should be taken into account in the design of an individual PCB for use in the computer system. In this context, we have realized that the above-mentioned CAD tools are PCB-focusedxe2x80x94they do not address these system-level design parameters. Consequently, it may subsequently be discovered that an existing PCBxe2x80x94one already designed and manufacturedxe2x80x94in fact contributes to the computer system exceeding a system-level design parameterxe2x80x94with the result that the existing PCB may have to be manually re-worked and/or re-designed.
Therefore, and in accordance with the invention, in designing a computer system comprising a number of PCBs, a CAD tool generates data files, or output files, for each of the PCBs and processes the PCB data files for taking into account a system-level design parameter.
In an embodiment of the invention, a CAD tool takes into account signal path length at the system-level for a computer system comprising N PCBs, where N greater than 1. In particular, the CAD tool processes at least N board-related data files comprising layout, layup and signal path routing information for each PCB for determining if a system-level requirement for overall signal path length is met for at least one signal path.
In another embodiment of the invention a CAD tool takes into a physical orientation of signal paths as the signal paths traverse a computer system comprising N PCBs, where N greater than 1. In particular, the CAD tool processes at least N board-related data files comprising layout and signal path routing information for each PCB for creating a three-dimensional (3D) picture for showing how at least one signal path traverses the computer system in going from one PCB to another PCB.